Skip to content

docs: Breaking change — Some Microsoft.Extensions packages in .NET 11 shared framework#53565

Open
Copilot wants to merge 6 commits into
mainfrom
copilot/remove-unneeded-references-dotnet-11
Open

docs: Breaking change — Some Microsoft.Extensions packages in .NET 11 shared framework#53565
Copilot wants to merge 6 commits into
mainfrom
copilot/remove-unneeded-references-dotnet-11

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 5, 2026

Nine Microsoft.Extensions.* libraries are now part of the .NET 11 base shared framework, making explicit PackageReference entries unnecessary for net11.0-only projects and triggering NU1510 warnings. Projects pinned to old package versions may encounter runtime failures (MissingMethodException, TypeLoadException) due to accumulated breaking changes between those versions and 11.0.

Changes

  • New article docs/core/compatibility/extensions/11/extensions-in-shared-framework.md
    • Titled "Some Microsoft.Extensions packages included in shared framework"
    • Package names in "Previous behavior" link to their respective NuGet pages
    • Covers NU1510 warning and resolution: remove the PackageReference for net11.0-only projects
    • Clarifies multi-targeting behavior: NU1510 is not raised when the package is still needed for an older TFM (e.g., net10.0;net11.0); includes a conditional PackageReference example for projects that want to be explicit
    • Catalogs related breaking changes that may surface when upgrading old package versions (DI Abstractions, Logging Abstractions, Hosting Abstractions)
  • docs/core/compatibility/11.md — added entry to Extensions table
  • docs/core/compatibility/toc.yml — added entry under Extensions/.NET 11

Internal previews

📄 File 🔗 Preview link
docs/core/compatibility/11.md docs/core/compatibility/11
docs/core/compatibility/extensions/11/extensions-in-shared-framework.md docs/core/compatibility/extensions/11/extensions-in-shared-framework
docs/core/compatibility/toc.yml docs/core/compatibility/toc

@dotnet-policy-service dotnet-policy-service Bot added the okr-quality Content-quality KR: Concerns article defects (bugs), freshness, or build warnings. label May 5, 2026
…d framework (.NET 11)

Agent-Logs-Url: https://github.com/dotnet/docs/sessions/e8635257-475f-450d-8351-50107ec8c6e1

Co-authored-by: gewarren <24882762+gewarren@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix issue with Microsoft.Extensions libraries in .NET 11+ docs: Breaking change — Microsoft.Extensions.* Abstractions/Options/Primitives in .NET 11 shared framework May 5, 2026
Copilot AI requested a review from gewarren May 5, 2026 19:10
@gewarren gewarren marked this pull request as ready for review May 5, 2026 19:10
@gewarren gewarren requested a review from a team as a code owner May 5, 2026 19:10
Copilot AI review requested due to automatic review settings May 5, 2026 19:10
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new .NET 11 compatibility article documenting that several Microsoft.Extensions.* assemblies are now provided by the shared framework (triggering NU1510 when referenced explicitly), and wires the new article into the .NET 11 compatibility index and TOC.

Changes:

  • Added a new breaking change article describing the shared-framework inclusion of nine Microsoft.Extensions.* libraries and related guidance.
  • Linked the new article from the .NET 11 Extensions compatibility index page.
  • Added the new article to the compatibility TOC under .NET 11 > Extensions.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
docs/core/compatibility/extensions/11/extensions-in-shared-framework.md New breaking change article describing NU1510 implications and recommended actions for framework-provided Microsoft.Extensions.* assemblies.
docs/core/compatibility/11.md Adds the new Extensions breaking change to the .NET 11 index table.
docs/core/compatibility/toc.yml Adds a TOC entry for the new .NET 11 Extensions breaking change article.

Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/toc.yml Outdated
Comment thread docs/core/compatibility/11.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
Comment thread docs/core/compatibility/extensions/11/extensions-in-shared-framework.md Outdated
gewarren and others added 2 commits May 5, 2026 12:25
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
@gewarren
Copy link
Copy Markdown
Contributor

gewarren commented May 5, 2026

@copilot Please respond to remaining feedback.

…geting guidance

Agent-Logs-Url: https://github.com/dotnet/docs/sessions/b2a02110-0ef1-4f11-be45-fec2c67a75d5

Co-authored-by: gewarren <24882762+gewarren@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented May 5, 2026

@copilot Please respond to remaining feedback.

Addressed in commit 2074387:

  • Package names in "Previous behavior" now link to their NuGet pages.
  • Front matter title updated to match the H1 ("Some Microsoft.Extensions packages...").
  • "Recommended action" section now distinguishes single-target (net11.0 only — remove the PackageReference) from multi-targeted projects (net10.0;net11.0 — NU1510 isn't raised because the package is still needed for the older TFM; NuGet selects the right assembly automatically, with an optional conditional reference example).

Copilot AI changed the title docs: Breaking change — Microsoft.Extensions.* Abstractions/Options/Primitives in .NET 11 shared framework docs: Breaking change — Some Microsoft.Extensions packages in .NET 11 shared framework May 5, 2026
Copilot AI requested a review from gewarren May 5, 2026 19:31
@gewarren gewarren requested review from a team and ericstj May 5, 2026 19:36

# Some Microsoft.Extensions packages included in shared framework

To reduce application size, simplify package dependencies, and streamline servicing, .NET 11 includes nine `Microsoft.Extensions.*` libraries in the base shared framework. Projects that explicitly reference these packages receive build warning [NU1510](/nuget/reference/errors-and-warnings/nu1510). You can resolve the warning by removing the `PackageReference`. If you depend on an older version of these packages, upgrading to the .NET 11 version might expose previously undocumented breaking changes introduced between older versions and .NET 11.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

upgrading to the .NET 11 version might expose previously undocumented breaking changes introduced between older versions and .NET 11

I believe these breaking changes were documented (the ones listed at the end of this article).


## Previous behavior

Previously, the following `Microsoft.Extensions.*` libraries weren't part of the .NET base shared framework. Projects that needed them required explicit `PackageReference` entries, and the build process copied the assemblies to the output folder:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the .NET base shared framework

Is it worth mentioning that you get the shared framework by using Sdk="Microsoft.NET.Sdk", or similarly referencing any of the other SDKs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dotnet-fundamentals/svc okr-quality Content-quality KR: Concerns article defects (bugs), freshness, or build warnings.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Breaking change]: .NET 11+ shared framework includes Microsoft.Extensions.* Abstractions/Options/Primitives packages

4 participants